home *** CD-ROM | disk | FTP | other *** search
/ Chip 2004 October / Chip_2004-10_cd1.bin / tema / adam / adam10.exe / {app} / Adam.exe / 0 / RCDATA / 1000 next >
Text File  |  2004-04-14  |  5KB  |  257 lines

  1. SET SQL DIALECT 3;
  2.  
  3. /* Generators definitions */
  4.  
  5. CREATE GENERATOR DISKS_ID_GEN ;
  6. CREATE GENERATOR FILES_ID_GEN ;
  7. CREATE GENERATOR FOLDERS_ID_GEN ;
  8. CREATE GENERATOR PLAYLISTS_ID_GEN ;
  9. CREATE GENERATOR PLAYLISTS_ID_ID_GEN ;
  10.  
  11. SET GENERATOR DISKS_ID_GEN TO 0;
  12.  
  13. SET GENERATOR FILES_ID_GEN TO 0;
  14.  
  15. SET GENERATOR FOLDERS_ID_GEN TO 0;
  16.  
  17. SET GENERATOR PLAYLISTS_ID_GEN TO 0;
  18.  
  19. SET GENERATOR PLAYLISTS_ID_ID_GEN TO 0;
  20.  
  21.  
  22.  
  23. /* Tables definitions */
  24.  
  25. CREATE TABLE DISKS (
  26.     ID INTEGER NOT NULL,
  27.     SERIAL VARCHAR (50) CHARACTER SET UNICODE_FSS COLLATE UNICODE_FSS,
  28.     NAME VARCHAR (100) CHARACTER SET UNICODE_FSS COLLATE UNICODE_FSS,
  29.     PATH VARCHAR (100) CHARACTER SET UNICODE_FSS COLLATE UNICODE_FSS,
  30.     NOTES VARCHAR (1000) CHARACTER SET UNICODE_FSS COLLATE UNICODE_FSS,
  31.     SCANNED TIMESTAMP);
  32.  
  33. CREATE TABLE FILES (
  34.     ID INTEGER NOT NULL,
  35.     IDFOLDER INTEGER,
  36.     IDDISK INTEGER,
  37.     FILEORDER INTEGER,
  38.     PATH VARCHAR (256) CHARACTER SET UNICODE_FSS COLLATE UNICODE_FSS,
  39.     DURATION INTEGER,
  40.     FILESIZE INTEGER,
  41.     BITRATE INTEGER,
  42.     CHANMODE VARCHAR (50) CHARACTER SET UNICODE_FSS COLLATE UNICODE_FSS,
  43.     SAMPLERATE INTEGER,
  44.     VOLUME VARCHAR (20) CHARACTER SET UNICODE_FSS COLLATE UNICODE_FSS,
  45.     POPULARITY INTEGER DEFAULT 3,
  46.     TRACK VARCHAR (10) CHARACTER SET UNICODE_FSS COLLATE UNICODE_FSS,
  47.     ALBUM VARCHAR (100) CHARACTER SET UNICODE_FSS COLLATE UNICODE_FSS,
  48.     TITLE VARCHAR (100) CHARACTER SET UNICODE_FSS COLLATE UNICODE_FSS,
  49.     ARTIST VARCHAR (100) CHARACTER SET UNICODE_FSS COLLATE UNICODE_FSS,
  50.     LYRICS VARCHAR (1000) CHARACTER SET UNICODE_FSS COLLATE UNICODE_FSS,
  51.     GENRE VARCHAR (30) CHARACTER SET UNICODE_FSS COLLATE UNICODE_FSS,
  52.     RELEASED VARCHAR (10) CHARACTER SET UNICODE_FSS COLLATE UNICODE_FSS,
  53.     COMMENT VARCHAR (1000) CHARACTER SET UNICODE_FSS COLLATE UNICODE_FSS,
  54.     NOTES VARCHAR (1000) CHARACTER SET UNICODE_FSS COLLATE UNICODE_FSS);
  55.  
  56. CREATE TABLE FOLDERS (
  57.     ID INTEGER NOT NULL,
  58.     IDDISK INTEGER,
  59.     NAME VARCHAR (100) CHARACTER SET UNICODE_FSS NOT NULL COLLATE UNICODE_FSS,
  60.     PATH VARCHAR (1000) CHARACTER SET UNICODE_FSS COLLATE UNICODE_FSS,
  61.     PARENTID INTEGER,
  62.     NOTES VARCHAR (1000) CHARACTER SET UNICODE_FSS COLLATE UNICODE_FSS);
  63.  
  64. CREATE TABLE PLAYLISTS (
  65.     ID INTEGER NOT NULL,
  66.     NAME VARCHAR (100) CHARACTER SET UNICODE_FSS COLLATE UNICODE_FSS);
  67.  
  68. CREATE TABLE PLAYLISTS_ID (
  69.     ID INTEGER NOT NULL,
  70.     IDLIST INTEGER NOT NULL,
  71.     IDFILE INTEGER NOT NULL);
  72.  
  73.  
  74.  
  75. /* Primary keys definition */
  76.  
  77. ALTER TABLE DISKS ADD CONSTRAINT PK_DISKS PRIMARY KEY (ID);
  78. ALTER TABLE FILES ADD CONSTRAINT PK_FILES PRIMARY KEY (ID);
  79. ALTER TABLE FOLDERS ADD CONSTRAINT PK_FOLDERS PRIMARY KEY (ID);
  80. ALTER TABLE PLAYLISTS ADD CONSTRAINT PK_PLAYLISTS PRIMARY KEY (ID);
  81. ALTER TABLE PLAYLISTS_ID ADD CONSTRAINT PK_PLAYLISTS_ID PRIMARY KEY (ID);
  82.  
  83. /* Indices definition */
  84.  
  85. CREATE INDEX IDX_FILES_IDFOLDER ON FILES (IDFOLDER);
  86.  
  87.  
  88. SET TERM ^ ; 
  89.  
  90. /* Stored procedures definition */
  91.  
  92.  
  93. /* Stored Procedure: GET_DISKS_ID */
  94. CREATE PROCEDURE GET_DISKS_ID 
  95. RETURNS (
  96.     ID INTEGER)
  97. AS
  98. BEGIN
  99.   EXIT;
  100. END
  101. ^
  102.  
  103.  
  104. /* Stored Procedure: GET_FILES_ID */
  105. CREATE PROCEDURE GET_FILES_ID 
  106. RETURNS (
  107.     ID INTEGER)
  108. AS
  109. BEGIN
  110.   EXIT;
  111. END
  112. ^
  113.  
  114.  
  115. /* Stored Procedure: GET_FOLDERS_ID */
  116. CREATE PROCEDURE GET_FOLDERS_ID 
  117. RETURNS (
  118.     ID INTEGER)
  119. AS
  120. BEGIN
  121.   EXIT;
  122. END
  123. ^
  124.  
  125.  
  126. /* Stored Procedure: GET_PLAYLISTS_ID */
  127. CREATE PROCEDURE GET_PLAYLISTS_ID 
  128. RETURNS (
  129.     ID INTEGER)
  130. AS
  131. BEGIN
  132.   EXIT;
  133. END
  134. ^
  135.  
  136.  
  137. /* Stored Procedure: GET_PLAYLISTS_ID_ID */
  138. CREATE PROCEDURE GET_PLAYLISTS_ID_ID 
  139. RETURNS (
  140.     ID INTEGER)
  141. AS
  142. BEGIN
  143.   EXIT;
  144. END
  145. ^
  146.  
  147.  
  148. ALTER PROCEDURE GET_DISKS_ID 
  149. RETURNS (
  150.     ID INTEGER)
  151. AS
  152. BEGIN
  153.   ID = GEN_ID(DISKS_ID_GEN, 0);
  154.   SUSPEND;
  155. END
  156. ^
  157.  
  158.  
  159. ALTER PROCEDURE GET_FILES_ID 
  160. RETURNS (
  161.     ID INTEGER)
  162. AS
  163. BEGIN
  164.   ID = GEN_ID(FILES_ID_GEN, 0);
  165.   SUSPEND;
  166. END
  167. ^
  168.  
  169.  
  170. ALTER PROCEDURE GET_FOLDERS_ID 
  171. RETURNS (
  172.     ID INTEGER)
  173. AS
  174. BEGIN
  175.   ID = GEN_ID(FOLDERS_ID_GEN, 0);
  176.   SUSPEND;
  177. END
  178. ^
  179.  
  180.  
  181. ALTER PROCEDURE GET_PLAYLISTS_ID 
  182. RETURNS (
  183.     ID INTEGER)
  184. AS
  185. BEGIN
  186.   ID = GEN_ID(PLAYLISTS_ID_GEN, 0);
  187.   SUSPEND;
  188. END
  189. ^
  190.  
  191.  
  192. ALTER PROCEDURE GET_PLAYLISTS_ID_ID 
  193. RETURNS (
  194.     ID INTEGER)
  195. AS
  196. BEGIN
  197.   ID = GEN_ID(PLAYLISTS_ID_ID_GEN, 0);
  198.   SUSPEND;
  199. END
  200. ^
  201.  
  202.  
  203. SET TERM ; ^
  204.  
  205. SET TERM ^ ;
  206.  
  207. /* Triggers definition */
  208.  
  209.  
  210.  
  211. /* Trigger: DISKS_BI */
  212. CREATE TRIGGER DISKS_BI FOR DISKS ACTIVE
  213. BEFORE INSERT POSITION 0
  214. AS
  215. BEGIN
  216.   New.ID = GEN_ID(DISKS_ID_GEN, 1);
  217. END
  218. ^
  219.  
  220. /* Trigger: FILES_BI */
  221. CREATE TRIGGER FILES_BI FOR FILES ACTIVE
  222. BEFORE INSERT POSITION 0
  223. AS
  224. BEGIN
  225.   New.ID = GEN_ID(FILES_ID_GEN, 1);
  226. END
  227. ^
  228.  
  229. /* Trigger: FOLDERS_BI */
  230. CREATE TRIGGER FOLDERS_BI FOR FOLDERS ACTIVE
  231. BEFORE INSERT POSITION 0
  232. AS
  233. BEGIN
  234.   New.ID = GEN_ID(FOLDERS_ID_GEN, 1);
  235. END
  236. ^
  237.  
  238. /* Trigger: PLAYLISTS_BI */
  239. CREATE TRIGGER PLAYLISTS_BI FOR PLAYLISTS ACTIVE
  240. BEFORE INSERT POSITION 0
  241. AS
  242. BEGIN
  243.   New.ID = GEN_ID(PLAYLISTS_ID_GEN, 1);
  244. END
  245. ^
  246.  
  247. /* Trigger: PLAYLISTS_ID_BI */
  248. CREATE TRIGGER PLAYLISTS_ID_BI FOR PLAYLISTS_ID ACTIVE
  249. BEFORE INSERT POSITION 0
  250. AS
  251. BEGIN
  252.   New.ID = GEN_ID(PLAYLISTS_ID_ID_GEN, 1);
  253. END
  254. ^
  255.  
  256. SET TERM ; ^
  257.